A current trend in the computer industry is the interconnection of a number of independent computing nodes connected by a high-speed communications link. Each computing node is associated with one or more domains, where each domain represents a process having its own address space. Each domain contains a number of objects that can be invoked by other domains either in the same node as the referenced object or in different nodes connected to the node containing the referenced object.
Routinely, an object manager safely destroys object references that are no longer used and reclaims their resources. However, the object manager needs to know when there are no longer any outstanding references to the object in order to safely reclaim the associated resources. Typically, a reference counting mechanism is used to track the nodes and domains that reference a particular object. Occasionally, node failures occur which adversely affect the accuracy of the reference counting mechanism. Accordingly, there needs to be a reference counting mechanism that accurately tracks object references in light of node failures.